Obtaining metadata program information during channel changes

ABSTRACT

One embodiment provides a method and apparatus for obtaining metadata program information during channel changes. The method includes the capture of an on-screen display that is rendered by a rendering device such as, for example, a digital television system. The on-screen display may be generated by an access device such as a set-top box in response to a program selection event. Once captured, the on-screen display may be decoded to determine metadata for a program selected by the program selection event. In one embodiment, decoding may be provided using pattern matching, optical code recognition (OCR) or other like decoding technique for decoding a video frame to determine metadata for a program selected by the program selection event. In one embodiment, a copy of the program in conjunction with the captured metadata are stored within the persistent memory of a digital television device. Other embodiments are described and claimed.

RELATED APPLICATIONS

The present application is related to co-pending U.S. patent applicationSer. No. ______ , entitled “PHANTOM INFORMATION COMMANDS,” and filed onMar. ______ , 2007.

COPYRIGHT NOTICE PER 37 CFR 1.71(e):

A portion of the disclosure of this patent document contains materialwhich is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor the patent disclosure, as it spears in the Patent and TrademarkOffice patent file or records, but otherwise reserves all copyrightrights whatsoever. All trademarks used herein are the property of theirrespective trademark owners.

FIELD

The invention relates generally to the field of digital televisionsystems. More particularly, one or more of the embodiments relate toobtaining metadata program information during channel changes.

BACKGROUND

The majority of US households receive television content through cabletelevision systems. Such systems traditionally use a few OEM suppliersof hardware (e.g., set top boxes) and do not provide for integration ofnon-security navigation functionality of set-top boxes directly intodigital TV sets. Under the so called “Plug and Play” agreement, theCableCARD™ adapter card was standardized as a way to adapt consumerelectronics (CE) “navigation” devices to cable networks. WhileCableCARD™ standardization had promise, it was crippled by a lack ofcable operator support, access to only a 1-way, lower tier of service,and no service-supplied metadata. With the advent of Switch Digitalservice, cable operators are further depreciating 1-way service byeliminating access to even some of the “basic” content.

Cable television Multiple Service Operators (MSOs) are presentlyestablishing a new digital TV standard referred to as Open CableApplication Platform (OCAP) which will provide access to enhanced, 2-wayfunctionality with unrestricted access to premium and high-valueinteractive services. Under this scenario, metadata (and the userinterface) will be managed by OCAP applets downloaded to set-top boxessold at retail. There is discussion about downloading OCAP applets todevices connected to those set-top boxes—so called “endpoints” in thehome network. In this way, the cable operators are assured of the“proper display” of their user interface when playing back cablecontent.

Unfortunately, under the OCAP model, CE manufacturers' efforts to createan alternative user interface to that supplied via the OCAP applicationremain stymied because there is no way to gain access to the metadata.It is currently not possible to manage content in new ways that thecustomer might find compelling. Hence, the OCAP standard may forceconsumer electronics companies to conform to the user interfaces (UIs),Electronic Program Guides (EPGs), download protocols, and feature sets,defined by the MSOs using the OCAP standard. Unless a televisionreceiver device such as a TV conforms to the OCAP standard (and itsassociated restrictions), it will be unable, among other things, toreceive the meta-data related to the digital content. Without thismeta-data, the television receiver is unable to display any informationrelated to the content. As a result, improvements in technology,improved user interfaces and other features developed by such consumerelectronics companies, which are incompatible with the MSO supplied OCAPinterface, are unusable in an OCAP environment. Additionally, theconsumer is stuck with whatever user interface and EPG capabilities areprovided by their cable television supplier.

Internet services exist that can provide the desired descriptivematerial, however, to use such services, it is generally necessary toknow the service provider, the time, and the channel number of theprogram being viewed. In a configuration where the STB is simplystreaming decoded video to the TV (i.e., the STB is used as atuner/decoder), the virtual channel number associated with the video isunknown. Without the virtual channel number, Internet services thatprovide meta-data or descriptive material are unavailable.

SUMMARY

One embodiment provides a method and apparatus for obtaining metadataprogram information during channel changes. The method includes thecapture of an on-screen display that is rendered by a rendering devicesuch as, for example, a digital television system. The on-screen displaymay be generated by an access device such as a set-top box in responseto a program selection event. Once captured, the on-screen display maybe decoded to determine metadata for a program selected by the programselection event. In one embodiment, decoding may be provided usingpattern matching, optical code recognition (OCR) or other like decodingtechnique for decoding a video frame to determine metadata for programsselected by the program selection event. In one embodiment, a copy ofthe program in conjunction with the captured metadata are stored withinthe persistent memory of a digital television device. In a furtherembodiment, the digital television device may issue remote controlcommands to the access device to direct the access device to requestadditional on-screen displays to provide additional metadata regardingthe selected program.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is illustrated by way of example, and not by wayof limitation, in the figures of the accompanying drawings and in which:

FIG. 1 is a block diagram of a set top box (STB) access device and adigital TV control device that obtains metadata program informationduring channel changes, according to one embodiment.

FIG. 2 is a block diagram of an STB access device and a digital TVcontrol device that obtains metadata program information during channelchanges, according to one embodiment.

FIG. 3 is an example block diagram depicting a control device accordingto one embodiment in which multiple remote control command sets can beinterpreted.

FIG. 4 is an example of an electronic program guide (EPG) screencontaining metadata that can be captured according to one embodiment.

FIG. 5 is an example of a detail page in an EPG with metadata that canbe captured according to one embodiment.

FIG. 6 is an example of an on-screen display generated in response to achannel change and containing mini-metadata that can be capturedaccording to one embodiment.

FIG. 7 is another example of an on-screen display that is generated inresponse to a channel change and contains metadata that can be capturedaccording to one embodiment.

FIG. 8 is an example of an on-screen display that can be generated by aset top box in response to an information command issued by a digitaltelevision according to one embodiment.

FIG. 9 is an example of an on-screen display of an index of recordedprograms (IRP) that is generated in response to user access to thecontent of a personal video recorder according to one embodiment.

FIG. 10 is a flow chart depicting a method for obtaining metadataprogram information during channel changes, to obtain information on aselected program according to one embodiment.

DETAILED DESCRIPTION

A method and apparatus for obtaining metadata program information duringchannel changes are described. As described in greater detail below, incertain embodiments a control device uses program selection events tocapture metadata and/or command information associated with digitaltelevision content from a television receiver device serving as anaccess device. As described herein, the term “metadata” may include butis not limited to navigation information, scheduling information andprogram information such as a program name, parental rating, programduration, channel number program was recorded from, channel name programwas recorded from, current data and time and the current list offavorites which is active. As described herein, the term “mini-metadata”may include but is not limited to minimum program information includingthe selected channel number and a system time or other like minimumprogram information displayed in response to a program selection event.

As described herein, the term “program selection event” includes, but isnot limited to, a channel tuning event, a selection from a list ofrecorded programs on a personal video recorder (PVR), a selection from alist of Video on Demand (VOD) programs, a selection to play packagemedia, a selection from a list of content stored on portable media, aselection from a list of content stored on portable devices. Asdescribed herein, a “channel tuning event” may include, but is notlimited to, entry of a channel number, selection of a program from anEPC, toggling of channel tuning buttons of a remote or other liketechnique for selection of a program for display on a digital TV device.By capturing metadata for a program selected by a program selectionevent, controlling operation of the access device and/or presentation ofthe metadata can be manipulated by another device (such as a televisionset or network server) without the constraints imposed by a cable orsatellite or Telco based television service provider.

In the embodiments described, remote control command that are issued bya remote control device are monitored to detect a program selectionevent. As described herein, remote control devices include, but are notlimited to, hand-held battery operated controllers that are roughly fiveto ten inches in length and one to four inches wide and other likedevices that use infrared (IR) and/or radio frequency (RF) transmissionsto send encoded control messages to a target device such as atelevision, recorder, player, access device, set-top box, controldevice, etc. Currently, the most prevalent class of such devices use anumeric key pad along with dedicated command keys such as [ON], [MENU],[PLAY], [RECORD], [GUIDE], [SELECT], [LIST], etc. commands and keysrepresenting channel and volume up and down incrementing commands.

As described herein, decoding techniques may include by are not limitedto optical character recognition (OCR), pattern recognition or otherlike technique for analyzing video data, such as an on-screen display(OSD) to determine metadata associated with a user selected program. Asdescribed herein, a “control device” may include but is not limited totelevision sets and other devices using or incorporating televisionreceivers and/or the OCR functions described herein including digitaltelevision sets, set-top boxes, set back boxes, digital video recorders,Blu-ray recorders, optical disc recorders, disc drive recorders andother devices without limitation.

As described herein, the term “access device” is intended to mean adevice such as a television set-top box or other terminal that hasdirect access to the service provider's metadata through digital datacommunication, whereas the term “receiver device” is generally intendedto represent the device that receives video content from the accessdevice, but is unable to directly access the digital representation ofthe metadata. The receiver device, by virtue of becoming the master tothe access device in accord with embodiments consistent with the presentinvention is also referred to as a control device.

In the following description, certain terminology is used to describefeatures of the invention. For example, the term “logic” isrepresentative of hardware and/or software configured to perform one ormore functions. For instance, examples of “hardware” include, but arenot limited or restricted to an integrated circuit, a finite statemachine or even combinatorial logic. The integrated circuit may take theform of a processor such as a microprocessor, application specificintegrated circuit, a digital signal processor, a micro-controller, orthe like.

An example of “software” includes executable code in the form of anapplication, an applet, a routine or even a series of instructions. Thesoftware may be stored in any type of computer or machine readablemedium such as a programmable electronic circuit, a semiconductor memorydevice inclusive of volatile memory (e.g., random access memory, etc.)and/or non-volatile memory (e.g., any type of read-only memory “ROM”,flash memory), a floppy diskette, an optical disk (e.g., compact disk ordigital video disc “DVD”), a hard drive disk, tape, or the like.

A further example of software includes a “software module.” A “softwaremodule” or “module” is a series of code instructions that, whenexecuted, performs a certain function. Examples of such code include anoperating system, an application, an applet, a program or even asubroutine. Software module(s) may be stored in a machine-readablemedium, including, but not limited to, an electronic circuit, asemiconductor memory device, a read only memory (ROM), a flash memory,an erasable ROM (EROM), a floppy diskette, a computer disk, an opticaldisk, a hard disk, a fiber optic medium, a radio frequency (RF) link andthe like.

The term “program” or “computer program” or similar terms, as usedherein, is defined as a sequence of instructions designed for executionon a computer system. A “program”, or “computer program”, may include asubroutine, a function, a procedure, an object method, an objectimplementation, in an executable application, an applet, a servlet, asource code, an object code, a shared library/dynamic load libraryand/or other sequence of instructions designed for execution on acomputer system.

The term “program”, as used herein, may also be used in a second context(the above definition being for the first context). In the secondcontext, the term is used in the sense of a “television program”. Inthis context, the term is used to mean any coherent sequence of audiovideo content such as those which would be interpreted as and reportedin an electronic program guide (EPG) as a single television program,without regard for whether the content is a movie, sporting event,segment of a multi-part series, news broadcast, etc. The term may alsobe interpreted to encompass commercial spots and other program-likecontent which may not be reported as a program in an electronic programguide.

One of the primary constraints to providing a CE Company with theability to provide their own control mechanism is the potentialinability to access the metadata associated with digital televisionprogramming. Normally such metadata is provided by the MSO to anapproved (e.g., leased) access device. FIG. 1 is a block diagram of aSTB access device 106 and a digital TV control device 102 that obtainsmetadata program information during channel changes according to oneembodiment. As shown in FIG. 1, STB 106 may include a service providerpersonal video recorder (PVR) 120. Conventionally, service provider PVRssuch as PVR 120 seem to run out of free memory space on hard disk drives(HDD) 122 for storing content selected by a user.

As further illustrated in FIG. 1, digital TV 102 may include personalvideo recorder capabilities such as provided by mega storage 170 whichmay include one or more storage mediums such as one or more Blu-raydiscs by Sony Electronics®, Inc. of Parkridge, N.J. In one embodiment,OCR function 138, TV storage function 200, in combination with programselection function 240 to monitor remote control commands to enabledigital TV 102 to directly record to digital video disc, Blu-ray disc orother like storage device for directly recording programs for set-topboxes or STBs that do not include a PVR such as PVR 120. In a furtherembodiment, digital TV 102 provides archival functions for recordingcontent within mega storage 106 such as programs contained within HDD122 to provide additional space within HDD 122. In a further embodiment,digital TV 122 may transfer shows from HDD 122 to mega storage 170 suchas digital video disc, Blu-ray disc or other like persistent storagemedium.

In the embodiments described, a limited amount of information may becaptured in response to program selection events to enablesynchronization of the tuning of a receiver with a recording by arecorder while using the service provider EPG which may entail recordingthe start and stop times and periodicy of the selected content. In afurther embodiment, archiving of content may require direct recording ofthe selected content for first generation copies on DVD or Blu-ray disc(such as mega storage 170). However, additional information may berequired to ensure proper recording, such as obtaining programinformation including the title, rating, actors, year produced as wellas the channel from which the content was recorded from end time. In afurther embodiment, the transfer of set-top box recorded content todiscs for archival purposes may be provided.

Representatively, FIG. 1 illustrates that digital TV 102 is connected toa cable set-top box 106 serving as an access device to the MSO 110 viacable network 114. A user may tell the STB access device 106 to cyclethrough channels by sending IR or RF remote control commands to enableprogram selection for viewing on TV 102. In one embodiment, TV 102issues commands using remote command transmitter 118 that are receivedby a remote command interface 122. This results in STB 106 generating adisplay of the EPG that is sent via the video output interface 126 to avideo decoder 130. The video frame representing the EPG is thendisplayed and captured in a frame memory 134 of the digital TV 102. Inone embodiment, program selection function 240 monitors the commandsissued to STB 106 to detect a program selection event.

In one embodiment, an OCR function 138 is carried out on the storedframe stored in 134 under control of (or as a computer program runningon) the digital TV's control processor 150. Once the OCR function hasbeen carried out, the resulting information is stored in a metadatadatabase 154, and can be used to record content to mega storage 170using TV storage function 200 and program selection function 240 todetect a program selection event. In an alternative embodiment,information stored within metadata database 154 is used, for example, topresent the viewer a different user interface. Metadata database 154 maybe embodied in a hard disc drive or other storage medium that is used tostore the content. In other embodiments, the data can further be used tocreate timers for recording devices such as personal video recorders(PVR—also known as digital video recorder DVR), video tape recorders,optical disc recorders, disc drives, etc.

As indicated above, metadata may include, but is not limited to,navigation data, scheduling data and program data. In one embodiment, anOptical Character Recognition (OCR) approach as described herein can beused to obtain all or portions of one or all three of the abovemetadata. As described herein, “navigation data” is information thatallows an application to know that a particular channel (e.g., channel“KPBS”) can be found on a particular logical channel (e.g., channel“15”). (In the case of interactive services such as VOD, there is nological channel, and the program is launched by negotiating a number ofon-screen displays (OSDs) and finally selecting the appropriate fieldfrom a list of choices.).

As further described herein, “scheduling data” is information that letsan application know that a particular program (e.g., the “News hour”program) starts at a particular time and will last for a particularduration (e.g., starts at “7 pm” and will last 1 hour). (Impulse Pay PerView (IPPV) is broadcast and therefore has a dedicated start time, whileVOD runs on individual sessions and can start anytime.). As describedherein, the term “program data” is information that provides otherprogram related information. For example, program data lets anapplication know that the “News hour” is classified as “News/Business”,contains Closed Captioning, and, like most news programs, is Not Rated.Program data may also include a short summary of the program's content.

In one embodiment, some type of other data source, back-channel ornetwork connection might be used to supplement the information obtainedby the OCR approach described herein. Many OCR software modules whichoperate on numerous operating systems can be used to carry out the OCRprocesses described herein, and therefore, they will not be described ingreat detail. By way of example, the commercially availableBizcardreader™ program can scan business cards and create a databasefrom the information.

In addition to data that are strictly considered to be metadata, byproperly commanding an access device such as a set top box, one can alsolearn other information about the access device, service provider anduser. Such other information can include service tier, model of accessdevice, service provider name, and other information. The term metadatais sometimes loosely used herein to describe not only metadata, but alsosuch other service related information.

Referring again to FIG. 1, in the embodiments described, operation ofthe process is independent of the nature of the access device so long asthe receiver device such as 102 can use some mechanism to detect when auser causes the access device to cycle through its pages of EPG andother metadata in response to a program selection event. The STB 106,for example, may be enabled with an OCAP engine 162 and will generallyhave its own user interface function 164, but using the describedembodiments, such interface can be supplanted or supplemented by captureof the metadata that would otherwise be inaccessible to the digital TV102.

In the event the access device is instructed to tune to a channel thatis not authorized, the access device can generate an OSD stating thatfact. In accord with preferred embodiments, the TV can interpret the OSDand tell the viewer that another channel needs to be tuned or theservice provider needs to be contacted. When the service provider isknown, such screens can be readily recognized and parsed by processor150.

In one embodiment, the access device's UI can be totally replaced by theCE manufacturer without need to directly access the digital metadata. Insuch a scenario, the metadata stored in the metadata database are usedto generate a TV UI. Commands sent to the TV, for example, from a remotecommander that controls the UI can then be translated at processor 150to an appropriate command that is then transmitted by remote commandtransmitter 118 to remote command interface 122 so that the user can bepresented with the CE manufacturer's UI, yet the net effect is that theaccess device 106 becomes a slave to the digital TV which acts as amaster.

Metadata captured from OSDs can thus allow the CE manufacturer's TV orother receiver device to manage and proxy the service provider set-topbox (or other access device) into a home network with other devicesconforming to more open standards, e.g. Digital Living Network Alliance(DLNA). The TV could further act as a gateway device to transform andstream content in IP format—allowing the TV or other interconnecteddevices to position itself as a home media server—aggregating content,from disparate sources, and presenting a uniform user friendly interfaceto play and manage content.

Referring again to FIG. 1, the control device, e.g. the DTV 102, canmanipulate the access device, e.g. the set-top 106 box using remotecontrol commands just as a human would. If the remote control has a “hotkey” to access a certain screen, the control device can use it. Ifbroadcast content is tuned using the 10-key numeric keypad to tune, thecontrol device can do this as well. The problem arises when options areonly provided in lists in which a user must highlight in order toselect. In this instance, the control device recognizes the entry inorder to be able to select it. As discussed later real-time OCR providesfor this capability.

If a viewer can use the remote to display program and guide information,the control device can too. And then, all this information can be OCR'edin to a database.

Remote control commands can be issued using any the following or anyother suitable interface and control device:

1. IR or RF blaster

2. HDMI Consumer Electronics Control (CEC)

3. 1394 AVC using CEA 931B

4. Internet Protocol

The following are the minimum remote control Keycode set required byOCAP for Cable:

Hot Buttons: [Guide], [Cancel], [Select], [List], [Power], [Info],[Menu], [Exit], [Last], [Function 0-3] [Favorite][Next Favorite], [OnDemand]

Tune: [Channel Up], [Channel Down], [RF Bypass]

Sound: [Volume Up], [Volume Down], [Mute]

Arrows: [Up], [Down], [Left], [Right]

Page: [Up], [Down], [Left], [Right]

10-key: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9 and multiple digit combinations]

Trick Play: [Fast forward], [Pause], [Rewind], [Skip Forward], [SkipBack], [Stop], [Play], [Record]

These are the basic set that most remote controls support. Not listed bythe OCAP specification were: [Pip] and [Swap].

Referring now to FIG. 2, a system in which the above process can bepracticed is depicted. In this embodiment, central processor 150 carriesout the above process as remote command set identifier routine 220stored in memory 204 (e.g., disc memory or other nonvolatile memory).The various command sets are also stored in memory as RC command sets222, 224 through 230. The remote command transmitter may be any suitabletransmitter that is compatible with a receiver within access device 106such as an infrared or RF transmitter 118 similar to that used in an STBremote control. Video decoder 130 provides an output that is indicativeof the presence of a frame synchronization signal that can be detectedby central processor 150.

Acquiring Metadata through OCR processing as described above can beaccomplished real-time as a user selects content from, for example, aservice provider EPG or PVR menu of recorded content. Accomplishing thisreal time, in accord with certain embodiments, utilizes an ability ofthe control device to understand the control codes for multiple devices(e.g., a PVR and the DTV control device 102). This is illustrated inFIG. 3 in which a block diagram of a DTV acting as a control device isshown to receive and understand the commands from multiple remotecontrol devices (or at least multiple command sets, since integrated oruniversal remote controllers may also be used). In this case, theexample control device 102 receives commands from both PVR remotecontroller 250 and its own DTV remote controller 254. In this case, PVRRC 250 exerts control commands over PVR 258, but such commands are alsolistened to by control device 102. RC 254 provides full functionalcontrol over DTV control device 102 in this example.

In this example, DTV 102 has stored in memory 204 a remote commandprocessor routine 260 that is able to access remote command sets 222,224 through 230, one of which corresponds to the command set for the DTV102 and another of which corresponds to a command set for PVR 258.Additionally, as shown in FIG. 2, a command set is available thatcontrols STB access device 106 via remote command transmitter 118.

Hence, by recognition of multiple remote commands, a monitoring device(i.e., control device such as a DTV) attached to a player/receiver, e.g.Sony TV, including remote command receiver 210 and program selectionfunction 240, can track the state of the receiver by monitoring remotecontrol commands sent to that receiver by the user. The control devicetherefore interprets not only its own remote control codes but also thatof the receiver. The keystrokes may be monitored separately or inconjunction with OCR techniques to interpret text rendered on screen tocapture metadata regarding programs selected by a user.

By monitoring the keystrokes sent by the user to the receiver, themonitoring device can tell whether the receiver is doing thefollowing: 1) accessing PVR content; 2) accessing the menu screen; 3)accessing the guide, 4) selecting a field which could be content, asub-menu or other function from the menu, PVR or guide; 4) determiningwhether trick mode functions such as play, fast forward/reverse, skipforward/reverse, etc. are being used which would be indicative of PVR orVOD content is being accessed.

Monitoring two or more remote control codes—its own and another devicemay be accomplished by employing two or more IR receivers or an IRreceiver that can interpret two sets of IR codes. In the later instance,the IR receiver may need to be provided with information as to which setof IR codes is being transmitted if there is overlap in the code sets.The control device, e.g. the DTV, is programmed to listen to two or moreremote control codes.

In accordance with certain embodiments, the control device can determinethat another device has been switched-off because the control devicedetected that the receiver “power” button has been pressed. If the TVinput is not switched to other content (another port), then after sometime, the TV itself could be switched-off. This might help the TV to bemore energy efficient.

In one embodiment, the obtaining of metadata program information duringchannel changes may monitor when content is selected from an ElectricProgram Guide or EPG. In one embodiment, remote control commands arepassed through from the recorder to the set top box using IR blaster orCEA-931B. When the set top box [GUIDE] button is pressed on theuniversal remote control, the recorder can become aware that thescheduled content is about to be browsed and chosen from the serviceprovider EPG such as service provider EPG 300 as shown in FIG. 4.

It is noted that in the United States, there are a limited number ofservice providers available, each of which uses a more or lessconventional style of electronic program guide. Two examples areprovided in FIGS. 4 and 5. FIG. 4 is an exemplary screen shot adaptedfrom an EPG used by DISH Network™ (EchoStar Technologies Corporation)and FIG. 5 is an exemplary screen shot adapted from an informationscreen used by Comcast™ (Comcast Corporation). Actual screen shots andother attributes may be copyright or trademarks of their respectiveowners. It is noted that the metadata associated with the televisionprogramming schedule is, in both cases and indeed in most EPGs,presented in a spreadsheet-like format time and date increasing fromleft to right in half hour increments with the channel and itsassociated program content appearing in rows below or above the timeinformation.

Commonly, the metadata also incorporates more detailed information abouta particular program. Such information is commonly represented at leastin part on the EPG screen itself for a program that is highlighted onthe EPG. FIG. 4 illustrates an example where additional information isnot provided. This information may be complete and represent the entireprogram detail (see FIG. 5), or may be abbreviated as shown in FIG. 4.Thus, if shown in total, the detailed information about each program canbe captured by OCR processing region 370 of FIG. 5 to determine the userselected programs from the EPG. System data and time can be obtainedfrom region 66 using similar OCR technology. Alternatively, as in thecase of FIGS. 5, 6 and 7, the full program detail may not be available.In this case, an “information” command can be issued for each program inorder to display a detail page 320 for the particular program such asthat shown in FIG. 5 and FIG. 8. This detail page contains a morecomplete description of the program (i.e., full review) in region 370,system time in 374 and ratings information in region 378.

However, some users are in the habit of merely toggling the up and downarrow buttons of a remote control to select a desired program, ratherthan accessing an EPG such as EPG 300 as shown in FIG. 4. For example,according to the DIRECTV® system of DIRECTV® of El Segundo, Calif.,depending on the mode of the set top box, in response to a channelchange by a user by toggling the up and down arrows of a remote control,the set top box may cause the generation of an on-screen display such asOSD 340 as shown in FIG. 6.

Representatively, OSD 340 is limited to the current system time, whichis indicated as 4:00 p.m., as well as the network, which is indicated asNBC 4, and the actual channel of the device, which is indicated aschannel 4. This minimum amount of information, in some embodiments, isreferred to as mini-metadata because it only provides a portion of themetadata regarding a selected program and omits at least the programtitle, the program start and end time, the duration as well as anyinformation regarding the rating and title of the show.

In one embodiment, as shown in FIG. 2, a digital television device orDTV device 102 can be coupled to a network 166 such as a DLNA network.When the control device 102 detects a mode of the set top box to displaya OSD as shown in 340, central processor 150 may direct access tointernet metadata service 200 which may access an online electronicprogram guide for the content provided by set top box 106. According tosuch an embodiment, initial or mini-metadata program information may besupplemented such that the content selected by the user may be storedwithin mega storage 170 with sufficient metadata to provide the userwith general program information.

In one embodiment, when mini-metadata is provided by an OSD in responseto a channel tuning event, the receiver device can then use the “info”command to access additional detail available for each program tocollect that sub-menu data about each program. Once the TV has thisinformation stored in its own metadata database, it can then carry outany number of actions and create timers for recording, etc. without needfor direct access to the metadata and without need for any specialservice such as that provided by Tivo™ for the scheduling data required.All the data comes from the video of the slaved access device such as acable set-top box.

FIG. 7 further illustrates an on-screen display 360 which may begenerated by set top box in response to a user channel change by toggleof the up and down arrows. As shown in FIG. 7, OSD 360 supplements theinformation included in OSD 340 of FIG. 6 by including the title of theselected program, the start and stop time of the selected program, arating of the program, as well as the system time, the network name aswell as the current channel. According to such an operating mode,sufficient metadata may be determined from an OSD such as OSD 360 asshown in FIG. 7 to enable recording of the selected content to megastorage 170 as shown in FIGS. 1-3.

In a third mode of operation, set top box may generate informationsimilar to the on-screen display 320 as shown in FIG. 5 in response tochannel change events which would contain complete metadata informationfor the selected program. In one embodiment, when the set top boxoperates according to the mode where an on-screen display 340 isillustrated in one embodiment a DTV device may issue an informationcommand to the set top box to cause the generation of an informationscreen such as information screen 400 as shown in FIG. 8. Thisinformation screen would enable the supplementing of informationgenerated from OSD 340 and would result in the generation of such infoscreen 400 to the user which might degrade the user's interfaceexperience.

Referring again to FIG. 4, when a user selects a program using the EPG300, generally there will be a certain number of right and left arrows,paging up and down until finally the [SELECT] or [CANCEL] button ispressed. Both commands, [SELECT] and [CANCEL], are intercepted by remotecommand receiver 210 as shown in FIG. 3. In one embodiment, when the[SELECT] command is used, the user has just attempted to choose somecontent. When the content is already being broadcast, then the contentwould be immediately tuned by the receiver, with an OSD displayeddepending on the mode of STB 106. Otherwise, a timer may be created.

In one embodiment, DTV 102 captures the OSD and may optionally displaydata which can be overlaid on the video output from the set top box withthe following query: Do you want to archive this content to persistentstorage. The [Up] [Down] arrows and [SELECT] will be momentarilyinterpreted by the recorder and not the set top box. A negative answerwill disable the decoding operations of the capture OSD by the recorderfor this visit to the guide. An affirmative answer may cause thefollowing data to be overlaid on the video on the lower part of thescreen: One moment, the recorder will attempt to scan the necessaryinformation.

Generally, the set top box may generate an on-screen display as thecontent is selected which may be scanned to determine metadata regardingthe selected program. The OSD generated by the set top box may provide aminimum amount of information including the system time, the channelfrom which the content is being provided and the name of the network, asshown in FIG. 6. In a further embodiment, remote command transmitter mayissue an [INFO] command which will cause the set top box to provide aninformation screen such as information screen 400 as shown in FIG. 8. Byanalyzing the information, the recorder will know whether the program isplaying right now or in the future by looking up the start time andcomparing it to the system time (which is also shown in the [INFO] OSD400 as shown in FIG. 8).

Subsequently, a [CANCEL] command can be sent to the set top box to teardown the [INFO] OSD 500 as shown in FIG. 6. At which point, a bannersuch as indicating: One moment, the recorder will attempt to scan thenecessary information, may be torn down by issuing the [CANCEL] command.Subsequently, a [SELECT] command can be sent to the set top box. Whenthe [SELECT] command is sent, if the program is currently playing, theset top box will tune directly to the program. If the program isselected for the future, a time creation LSD will typically be renderedon the screen which may happen whether a set top box is PVR enabled ornot since timers can be created regardless of whether content isrecorded or not.

In one embodiment, there will be some up/down, left/right arrows untilfinally a [SELECT] command is sent. In one embodiment, the [SELECT]command may be intercepted or a second scan is performed. A highlightedfield is determined to see if once, daily, weekly, monthly or other likeselection criteria is provided to enable the set up of a similar timerfor storing content within mega storage 170 as shown in FIG. 3.

In one embodiment, whenever the [DVR]/[LIST] button is pressed on theuniversal remote control, the recorder can become aware that content isabout to be browsed from the index of recorded programs (IRP), such asIRP 500 as shown in FIG. 9. Browsing can be monitored to find content toplay, but might also be to delete or change the periodic timerassociated with that particular content using the action buttons.Generally there will be a certain number of right and left arrows,paging up and down until finally the [SELECT] or [CANCEL] button ispressed. These may be intercepted by remote command receiver 210.

In the IRP application, one of the action buttons may have been selectedand not recorded content. To determine the highlighted field in the IRPapplication, the recorder can scan the screen using OCR. If it wascontent that is highlighted, then the situation is similar to thecontent selected from the guide discussed previously. If content was nothighlighted, e.g., one of the action buttons is being selected, then the[SELECT] command can be sent through to the set top box.

At this point, the DTV can know that content was highlighted. Once theuser selects the [SET] command, a brief on screen display may berendered by the television which may be captured and scanned. At thispoint, because the IRP is currently being accessed, the set top box willnot and should not respond and record since it does not make sense forthis menu, but the Blu-ray recorder can. A recorder which has been keyedup can respond to the [RECORD] command to perform the following:

1) The Recorder can display banner which is overlaid on the video outputfrom the set top box with the following query: Do you want to move thiscontent to Blu-ray disc. If the answer is yes, instead of setting the[SELECT] remote control command, the [INFO] command is sent. The [INFO]command will cause all metadata associated with the program to bedisplayed similar to FIG. 3 including the title and episode number. The[INFO] screen can be OCR'd by the recorder. The title and episode numbercan be matched with and obtained through the OCR scan procedure and AVCplay command sent from this specific content. A [CANCEL] remote controlcommand can be then sent to tear down the OSD. If the answer is no, thenthe [SELECT] command is sent without further delay.

According to one embodiment to the use of OCR technology in remotecontrol manipulation, cable content may be recorded to DVD or Blu-ray orother like persistent storage using only the service provider's set topbox EPG and the user interface. According to the embodiments, theservice provider's electronic program guide or EPG is not replaced butinstead a limited amount of information metadata is scanned to enablesynchronization of the tuning of a receiver with a recorder while usingthe service provider EPG as well as proper archiving and directrecording of the selected content for first generation copies of a DVD,Blu-ray disc or other like persistent storage. In addition, transfer settop box recorded content to discs for archival purposes may be providedin order to overcome the persistent problem of the lack of storagewithin the hard disk drives of a personal video recorder.

It is noted that no cooperation from the service provider is needed tocarry out the processes described and no outside data source is needed(although use of an outside data source to augment the informationcaptured as described is not precluded). Embodiments consistent with theinvention display all the metadata on-screen in order to dump it fromthe access device receiver. All the metadata gets OCR processed andre-recorded by the controlling device, e.g. the digital TV. No otherdata source is needed so the limitations imposed by withholding accessto the metadata are effectively circumvented.

Moreover, embodiments may be utilized to communicate through video withno dedicated back channel. The embodiments disclosed does require amechanism to control the operation of the access device, e.g. an IRtransmitter to transmit commands, but then the information received issent only as a video representation. Hence, in some embodiments, anunsightly set top box access device could even be totally hidden fromview and controlled by a control device such as 102 using any suitablecommand mechanism.

Although discussed in terms of infrared RC codes, IR may be replaced byRF signaling. Multiple RF frequencies may be monitored or multiple codeswithin a single RF frequency may be monitored. Procedural methods forimplementing one or more embodiments are now described.

Operation

Turning now to FIG. 7, the particular methods associated with variousembodiments are described in terms of computer software and hardwarewith reference to a flowchart. The methods to be performed by acomputing device (e.g., a digital TV device) may constitute statemachines or computer programs made up of computer-executableinstructions. The computer-executable instructions may be written in acomputer program and programming language or embodied in firmware logic.If written in a programming language conforming to a recognizedstandard, such instructions can be executed in a variety of hardwareplatforms and for interface to a variety of operating systems.

In addition, embodiments are not described with reference to anyparticular programming language. It will be appreciated that a varietyof programming languages may be used to implement embodiments asdescribed herein. Furthermore, it is common in the art to speak ofsoftware, in one form or another (e.g., program, procedure, process,application, etc.), as taking an action or causing a result. Suchexpressions are merely a shorthand way of saying that execution of thesoftware by a computing device causes the device to perform an action orproduce a result.

FIG. 7 is a flowchart illustrating a method 600 of obtaining metadataprogram information during channel changes according to one embodiment.FIG. 7 depicts an exemplary process 600 that can be used to obtain realtime metadata in accordance with one embodiment. An exemplary use forthis embodiment involves acquiring metadata for content received fromthe service provider set-top box 106 so that it may be recorded alongwith the content. This is accomplished without need for a complete dumpof all metadata present in the entire EPG database. Acquisition ofmetadata is limited to the metadata associated with the content beingselected.

Referring again to FIG. 3, in this process, the remote control commandsfrom 250 are monitored by program selection function 240. (Note that thePVR 258 could readily be a part of STB 106 without departing from thedescribed embodiments, and the term “accessory device” used in thedrawing should not be construed to exclude internal accessory devices.)Referring again to FIG. 7, the PVR commands are monitored first for anactivation command (e.g., the PVR is being turned on or selected) at 608(here the term activation command can be construed to be an equivalentsequence of commands such as a menu command followed by a guide commandselection from the menu, without limitation—i.e., a command or sequenceof commands that that activates a mode of operation having potential forselection of a program activates a mode of operation having potentialfor selection of a program).

Once the activation command is received at 612, the RC commands from RC250 are monitored for a [SELECT] command at 616. Issuance of such acommand (without the command being preceded by an off command to thePVR) is indicative that content has been selected for some purpose(e.g., playback, recording, browsing, etc.). At this point, when a[SELECT] command is received at 620, the control device 102 captures anOSD that is temporarily displayed at 624. Selection of content resultsin display of metadata as visual information to the video output of theaccess device 106. By use of the previously described OCR process, themetadata can be captured and stored at 628.

In one embodiment, the OSD generated in response to a channel tuningevent is captured and the extracted metadata is supplemented withadditional metadata from an Internet metadata service such as an onlineEPG. Note that in alternative embodiments, any signal that is indicativeof selection of content can be harnessed as a trigger to issue an [INFO]command. Additionally, the control device 102 can readily render an onscreen display to ask the user if he or she desires to capture themetadata and permit the user to make such a decision prior to carryingout the [INFO] command and OCR processing if desired. Many othervariations are possible without departing from embodiments consistentwith the present invention.

In some instances, additional metadata may be at 632 which can usuallybe retrieved by a second issuance of an [INFO] command or a [PAGE DOWN]command at 624 which can similarly be processed via OCR processing aspreviously described. Once the desired metadata are captured (in amatter of seconds or fractions of a second), phantom [CANCEL] commandsare issued to the access device 106 to restore the device to the priorstate selected by the user at 636. At process block 636, the selectedprogram is recorded in conjunction with the metadata by a digital TV andthe process terminates.

In the embodiments described where a channel selection event isdetected, the amount of metadata that can be captured and decoded froman on-screen display that is generated by the set top box in response tothe program selection event may provide a minimum amount of metadatalimited to, for example, as little as the program channel as well as thecurrent time. (See, FIG. 6.) Using such information at process block634, access may be made to an Internet service to acquire additionalmetadata for the selected program.

For example, in one embodiment, as shown in FIG. 2, a home network maybe coupled to DTV 102 as well as mega storage 170 which provides orsupplements content recording capabilities provided by set top box 106.In accordance with such an embodiment, a wide area network (or WAN 168)may be accessed to an Internet metadata service 200. In one embodiment,such Internet metadata service may be, for example an online electronicprogram guide from the service provider. Based on such online programguide, additional information may be determined based on the currenttime as well as the program channel to determine additional metadatarequired to provide a recording of such content within mega storage 170.In the embodiments described, such information may include, but is notlimited to, title, rating, actors, year produced as well as the channelfrom which the content is recoded as well as the current time andduration of the content.

To further summarize, the remote control keypresses are monitored.Whenever, for example, [GUIDE] or [PVR] or [ON] or [LIST] for a PVR arepressed (note that it is not inconsistent for these commands to beissued to the STB 106 which may or may not incorporate a PVR),monitoring commences. [UP], [DOWN], [PAGE UP], [PAGE DOWN] and otherkeys are pressed by the user until finally [SELECT] is pressed. At thistime, a phantom [INFO] command is sent briefly (long enough to store ina frame store for OCR processing) displaying all the metadata associatedwith a particular program. This screen of information is OCR'ed into adatabase for the program about to be selected. A [CANCEL] command isthen sent returning the set-top box to the guide or PVR menu screen.

In the described embodiments, the “interception” of the [SELECT]keypress can be done by 1) a specialized remote or 2) remote controlpass-through and change functionality from the control device (e.g. TVor recording device). One advantage of this OCR approach is that theentire EPG does not need to be acquired by the control device. Only thecontent that was selected from the service operator's EPG. Issuance ofthe [INFO] command will generally cause all the metadata descriptivecontent for a program to be displayed. In those instances whereadditional info is available, the second loop triggered by 632 can beused. In one embodiment, the control device can scan the data at thetime of its brief display to properly record content for archiving andsharing purposes. Any content from any player that outputs analog mightbe captured, compressed and distributed over IP. Metadata can beacquired by manipulating a player, e.g., DVD or Blu-ray, VCR, etc. andthen scanning the OSDs. That information can be sent along with thecontent in IP packets if desired. Other variations will occur to thoseskilled in the art upon consideration of the present teachings.

In the case where the PVR is integral to the STB 106, the issuance ofany number of commands can be interpreted as a trigger in 608 to beginlooking for selection of a program. For example, a [GUIDE] or [PVR]command at 608 can initiate the process. Additionally, issuance of a[PVR RECORD] command alone can be used to trigger issuance of the [INFO]command to extract the associated metadata.

Thus, a method of capture of program metadata in near real timeconsistent with certain embodiments involves monitoring remote controlcommands to detect an activate command that activates a mode ofoperation having potential for selection of a program; upon receipt ofthe activate command, further monitoring remote control commands for aselection command that selects a program; upon receipt of the selectioncommand, capture an on-screen display that an access device generates inresponse to a program selection event, when the on-screen displayincludes a video frame containing metadata associated with the program;and optical character recognition (OCR) processing the video framecontaining the metadata relating to the program in order to extract themetadata associated with the program.

In certain embodiments, where additional information is required, anaccess device may be caused to generate an information screen inresponse to an issued [INFO] command. The method further involvesissuing a cancel command that causes the access device to exit themetadata display. In certain embodiments, the activate command includesone of a program guide display command, a recorded program list displaycommand and a playback device activation command. In certainembodiments, the activate command includes a sequence of commands. Incertain embodiments, the selection command is preceded by a sequence ofnavigation commands. In certain embodiments, the OCR processing iscarried out on a selected segment of the video frame.

In one embodiment, the process further involves recording the metadatain association with recording a copy of the content. In certainembodiments, the issuing involves transmitting of one of an infraredremote control command and an RF remote control command. In oneembodiment, the process is carried out by a control device that is not atarget device of at least one of the activate and selection commands. Incertain embodiments, the process is carried out in a digital televisiondevice, wherein the digital television device is not a target device ofat least one of the activate and selection commands.

In one embodiment, the process further involves issuing a furtherinformation command that causes an access device to generate anothervideo frame containing metadata associated with the program; and opticalcharacter recognition (OCR) processing the another video framecontaining the metadata relating to the program in order to extractadditional metadata associated with the program. In certain embodiments,the access device includes a television set top box, and wherein theprocess is carried out on a digital television device. In certainembodiments, a computer readable storage medium stores instructionswhich, when executed on a programmed processor, carry out any of theprocesses above.

In another embodiment, a control device captures program metadata innear real time and has a control processor that controls a processwherein a remote control command receiver monitors remote controlcommands to detect an activate command that activates a mode ofoperation having potential for selection of a program. Upon receipt ofthe activate command, the remote control command further monitors remotecontrol commands for a selection command that selects a program. Uponreceipt of the selection command, on-screen display generated by anaccess device is captured. Depending on the mode of operation of theSTB, the control processor causes a remote control command transmitterto issue an information command that causes an access device to generatea video frame containing additional metadata associated with theprogram. A video receiver receives the video frame. An optical characterrecognition (OCR) machine processes the video frame containing themetadata relating to the program in order to extract the metadataassociated with the program.

However, the described embodiments are not to be considered to belimited to the exact command structure or command sequence structurethat are used in the remote control paradigm used in such conventionalremote controller devices. Equivalently, television devices that aremore computer based may utilize a point and click paradigm fornavigation of menus to issue equivalent commands. So, a mouse,trackball, touch pad or other pointer device used in conjunction with aselection mechanism (e.g., a right or left click of a dual switch mouse)can produce equivalent set of commands and are entirely equivalent forpurposes of defining embodiments consistent with the present invention.Thus, playback from a PC device using Microsoft Windows Media Playermight include a sequence of operations including pointing to a WindowsMedia Player icon, clicking on the icon, pointing to a “Library” tab andclicking on the “Library” tab, pointing to an “all video” menu selectionand clicking, followed by pointing to a video selection and clicking.Such a paradigm generally includes action of a pointing device to pointfollowed by clicking a pointer select button to implement a selectionoperation. Thus, in a similar manner, if a user is to implement a [MENU]or [GUIDE] command using such a point and click paradigm, the operationwould involve manipulation of an on-screen cursor to a desired menulocation (icon, text, logo, image, thumbnail, etc.) representing a[MENU] or [GUIDE] function followed by an operation that selects thecommand associated with the cursor location. For purposes of embodimentsof this invention, this sequence of operations is intended to beembraced in its entirety by the shorthand notation of [MENU] or [GUIDE]without regard for how such sequence of commands are implemented.

At this writing, cursor movements have been implemented using any numberof functions including detection of wrist or hand motion using inertialdetectors, sometimes in connection with detection of gravitational forceas an up-down reference point. Movement to a particular cursor location(e.g., an edge or corner of the screen) can be used to invoke aparticular menu. An example of such devices is produced by HillcrestLaboratories, Inc. of Rockville, Md. which uses a scroll wheel andselect buttons in conjunction with motion sensing technology (referredto as Spontaneous Navigation™) configured in a circular doughnut shapeddevice that is hand held. In this device, navigation is carried out bymovement of the hand or wrist, and such movements are used incooperation with selection buttons and a scroll wheel. However, thisparadigm is but a newer incarnation of point and click functions thatuse different hand motions than those, for example, of a computer mouse.

Hence, in summary, when bracketed commands such as [ON], [MENU], [LIST]or [GUIDE] are used herein, it is to be understood that equivalentfunctions can be carried out by point an click interfaces or other userinterface paradigms without departing from the teachings consistent withembodiments of the present invention. Such point and clickimplementations are functionally identical and within the scope of thepresent claims in that any command that implements the bracketed commandwill produce the video frame that can be interpreted by OCR processanalysis.

Alternate Embodiments

Several aspects of one implementation of the obtaining metadata programinformation during channel changes are described. However, variousimplementations of the location-based message provide numerous featuresincluding, complementing, supplementing, and/or replacing the featuresdescribed above. Features can be implemented as part of the DTV or aspart of a home entertainment network in different embodimentimplementations. In addition, the foregoing description, for purposes ofexplanation, used specific nomenclature to provide a thoroughunderstanding of the embodiments of the invention. However, it will beapparent to one skilled in the art that the specific details are notrequired to practice the embodiments of the invention.

It is to be understood that even though numerous characteristics andadvantages of various embodiments have been set forth in the foregoingdescription, together with details of the structure and function ofvarious embodiments of the invention, this disclosure is illustrativeonly. In some cases, certain subassemblies are only described in detailwith one such embodiment. Nevertheless, it is recognized and intendedthat such subassemblies may be used in other embodiments. Changes may bemade in detail, especially matters of structure and management of partswithin the principles of the embodiments to the full extent indicated bythe broad general meaning of the terms in which the appended claims areexpressed.

Having disclosed exemplary embodiments and the best mode, modificationsand variations may be made to the disclosed embodiments while remainingwithin the scope of the embodiments of the invention as defined by thefollowing claims.

1. A method comprising: capturing an on-screen display that is renderedby a rendering device, the on-screen display generated by an accessdevice in response to a program selection event; and decoding thecaptured on-screen display to determine metadata for a program selectedby the program selection event.
 2. The method of claim 1 furthercomprising: recording the program selected by the program selectionevent in conjunction with the determined metadata for the programselected by the program selection event.
 3. The method of claim 1,wherein prior to the capturing of the on-screen display, the methodfurther comprising: monitoring remote control commands issued to anaccess device to detect an activate command that activates a mode ofoperation having potential for selection of a program; upon receipt ofthe activate command, further monitoring remote control commands for aselection command that selects a program; and detecting a programselection event if a selection command is identified that selects aprogram.
 4. The method of claim 1, wherein decoding the capturedon-screen display further comprising: optical character recognition(OCR) processing a video frame of the captured on-screen displaycontaining the metadata related to the selected program to extract themetadata associated with the selected program.
 5. The method of claim 1,wherein decoding the captured on-screen display further comprising:determining one or more of a program name, a start time and an end timeof the program selected by the program selection event; and searching anetwork to determine additional program information according to the oneor more of the program name, start time and end time of the programselected by the program selection event.
 6. The method according toclaim 3, carried out in a digital television device, wherein the digitaltelevision device is not a target device of at least one of the activateand selection commands.
 7. The method of claim 1 further comprising:issuing an information command that causes the access device to generatea video frame containing metadata associated with the program; andoptical character recognition (OCR) processing the video framecontaining the metadata relating to the program to extract additionalmetadata associated with the program.
 8. The method of claim 7, whereinthe access device comprises a television set top box that is a target ofa remote control selection command, and wherein the process is carriedout on a digital television device.
 9. A computer readable storagemedium storing instructions which, when executed on a programmedprocessor, carry out a process according to claim
 1. 10. The method ofclaim 1 wherein the program selection event is one of a channel tuningevent, a selection from a list of recorded programs on a personal videorecorder (PVR), a selection from a list of Video on Demand (VOD)programs, a selection to play package media, a selection from a list ofcontent stored on portable media, a selection from a list of contentstored on portable devices.
 11. The method of claim 1 wherein themetadata is at least one of a program name, a parental rating, a programduration, a channel number program was recorded from, channel nameprogram was recorded from, current data and time and the current list offavorites which is active.
 12. A method comprising: detecting a remotecontrol command that selects a program; capturing a video frame that isrendered by a rendering device, the video frame generated by an accessdevice that is a target of the detected remote control command; anddecoding the captured video frame to determine metadata regarding theselected program.
 13. The method of claim 12, wherein the renderingdevice is not a target of the detected remote control command.
 14. Themethod of claim 12, wherein detecting the remote control command furthercomprises: monitoring remote control commands to detect an activatecommand that activates a mode of operation having potential forselection of a program; upon detection of the activate command, furthermonitoring remote control commands to detect a selection command thatselects a program; and upon detection of the selection command, issuingan information command that causes the access device to generate a videoframe containing additional metadata associated with the program; 15.The method of claim 12, further comprising recording the metadata inassociation with recording a copy of the program.
 16. The method ofclaim 12, further comprising: generating, by the access device that is atarget of the detected remote control command, an on-screen displayincluding metadata regarding the selected program; and optical characterrecognition (OCR) processing the on-screen display containing themetadata relating to the program to extract the metadata associated withthe program.
 17. A system comprising: a digital television deviceincluding a remote control command receiver to detect a remote controlcommand that selects a program and a video receiver; decode logic tocapture a video frame that is rendered by the video receiver thatreceives the video frame, the decode logic to decode the captured videoframe to determine metadata regarding the selected program; and anetwork coupled to the digital television device, the digital televisiondevice to request additional program information regarding the selectedprogram according to the determined metadata regarding the selectedprogram.
 18. The system of claim 17, wherein an access device togenerate a video frame containing metadata associated with the programin response to the remote control command that selects the program. 19.The system of claim 18, wherein the access device comprises a set-topbox that is a target of the remote control command that selects aprogram.
 20. The system of claim 17, wherein the decode logic furthercomprises: optical character recognition (OCR) logic to process a videoframe of the captured on-screen display containing the metadata relatedto the selected program to extract the metadata associated with theselected program.
 21. The system of claim 17, wherein the decode logicis further to, upon detection of the remote control command that selectsthe program, issue an information command that causes an access deviceto generate an on-screen display containing additional metadataassociated with the program
 22. The system of claim 17, wherein thedigital television is not a target of the remote control command thatselects the program.